1. Field
The field relates to visual information systems and, more particularly, to a method and apparatus for selecting commands for transmission from an update queue.
2. Description of the Related Art
Telephones enable people to communicate verbally, but do not enable people to exchange visual information with each other. Conventionally, when visual information such as a PowerPoint (™ Microsoft Corporation) presentation or a document was to be referenced during a telephone call, the visual information would be faxed, e-mailed, or otherwise physically sent to the participants so that the participants could have the reference materials available during the telephone call.
As technology evolved, software was developed to allow information being shown on a presenter's display (presenter display information), such as a computer monitor screen, to be made visible on another display at a different location. Software of this nature will be referred to herein as “Remote Viewing Software” (RVS).
FIG. 1 illustrates an example of a way in which remote viewing of presenter display information may take place. As shown in FIG. 1, it may be desirable to allow presenter display information 12 appearing on a presenter display 14 associated with a presenter machine 16, to be made available to one or more viewers remotely. To do so, RVS software 20 on the presenter machine 16 will capture the presenter display information 12 and pass it over a network 22 to a viewer machine 24. An instantiation of the RVS software 26 (which may be the same as RVS software 20 or a limited version of RVS software 20) will decode the received presenter display information to generate viewer display information 28 that will be caused to appear on the viewer display 30. A remote viewing service 32 may be provided to support viewing sessions on the network. A combination of the presenter machine 16 and presenter display 14 will collectively be referred to herein as a “presenter” 34. The presenter machine and presenter display may be separate devices or integrally formed. Similarly, a combination of a viewer machine and viewer display will collectively be referred to herein as a “viewer” 36. The viewer machine and viewer display may be separate devices or integrally formed.
By causing the viewer display information 28 on the viewer display 30 to replicate the presenter display information 12 on the presenter display 14, both the presenter and viewer may see the same display information. Of course, due to processing and transmission delays, the information provided on the viewer's display may lag the information being shown on the presenter's display somewhat. A remote viewing session over which the presenter display information is transmitted may be hosted by the presenter machine 16, or the remote viewing service 32 may assume a portion of the tasks required to presenter the session.
When the system of FIG. 1 is in use, a desired visual presentation may be caused to appear on the viewer display 30 simply by causing the desired visual presentation to appear as part of the presenter display information shown on the presenter display. Reference may then be made to the shared presenter display information to enable more effective communication to take place between the presenter participant and viewer participants.
Since transmission of presenter display information may require transmission of a significant amount of data, RVS software 20 may encode the presenter display information for transmission over the network 22. The RVS software 26 will then decode the received information for display on the viewer display 30.
The remote viewing service 32 may be particularly useful in a situation where more than one viewer would like to view the presenter display information 12. In this instance, the presenter may transmit presenter updates to the presenter display information to the remote viewing service 32, and the remote viewing service 32 may then transmit the information as viewer updates to each of the viewers. Since different viewers may have different abilities to receive information, for example where the network conditions or machine capabilities limit a receiver's ability to receive updates, it is desirable to allow the remote viewing service to transmit information to the several viewers at different rates. However, to minimize the memory requirements at the service 32, it is advantageous to allow the remote viewing service to use only one or a limited number of queues for each session.